// utils/lazyload.js
export default {
  install(Vue) {
    Vue.directive('lazy', {
      inserted(el, binding) {
        // 设置默认占位图（可选）
        el.src = 'https://kimi.dingxians.cn/upload/static/home/peng/card.png';
        
        const observer = new IntersectionObserver((entries) => {
          entries.forEach(entry => {
            if (entry.isIntersecting) {
              // 图片进入视口时加载
              el.src = binding.value;
              observer.unobserve(el);
              
              // 监听图片加载成功/失败
              el.onload = () => {
                console.log('图片加载成功');
              };
              el.onerror = (e) => {
                console.error('图片加载失败', e);
                // 设置错误提示图（可选）
                el.src = 'https://kimi.dingxians.cn/upload/static/home/peng/card.png';
              };
            }
          });
        });
        
        observer.observe(el);
      }
    });
  }
};